// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2007-9-15 18:54:35

// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   vx.java

package com.zelix;

import java.io.Serializable;
import java.util.*;

// Referenced classes of package com.zelix:
//            f1, hs

public class vx
    implements Serializable, Comparable
{

    private f1 a;
    private f1 b;
    private f1 c;

    public vx(f1 f1_1)
    {
        a = new f1();
        a.add(f1_1);
        b = new f1(f1_1);
        c = new f1(f1_1);
    }

    public vx(f1 f1_1, f1 f1_2)
    {
        Iterator iterator;
        int i;
        i = hs.c;
        super();
        a = new f1();
        a.addAll(f1_1);
        b = f1_2;
        c = new f1();
        iterator = a.iterator();
        if(i == 0) goto _L2; else goto _L1
_L1:
        f1 f1_3 = (f1)iterator.next();
        c.addAll(f1_3);
_L2:
        if(!iterator.hasNext())
            return;
        if(true) goto _L1; else goto _L3
_L3:
    }

    public int compareTo(Object obj)
    {
        if(obj instanceof vx)
        {
            vx vx1 = (vx)obj;
            if(f() < vx1.f())
                return -1;
            if(f() == vx1.f())
            {
                if(b() < vx1.b())
                    return -1;
                return b() != vx1.b() ? 1 : 0;
            } else
            {
                return 1;
            }
        } else
        {
            return 1;
        }
    }

    public boolean a(Object obj)
    {
        return b.contains(obj);
    }

    public boolean b(Object obj)
    {
        return c.contains(obj);
    }

    public boolean equals(Object obj)
    {
        if(obj instanceof vx)
        {
            vx vx1 = (vx)obj;
            return a.equals(vx1.a);
        } else
        {
            return false;
        }
    }

    public int b()
    {
        return b.size();
    }

    public f1 a(vx vx1)
    {
        f1 f1_1;
        f1 f1_3;
        Iterator iterator;
        int i;
        f1 f1_2;
label0:
        {
            i = hs.c;
            f1_1 = new f1();
            if(a.size() > vx1.a.size())
            {
                f1_2 = vx1.a;
                f1_3 = a;
                if(i == 0)
                    break label0;
            }
            f1_2 = a;
            f1_3 = vx1.a;
        }
        iterator = f1_2.iterator();
        if(i == 0) goto _L2; else goto _L1
_L1:
        Object obj = iterator.next();
        if(f1_3.contains(obj))
            f1_1.add(obj);
_L2:
        if(!iterator.hasNext())
            return f1_1;
        if(true) goto _L1; else goto _L3
_L3:
    }

    public Set c()
    {
        return Collections.unmodifiableSet(b);
    }

    public vx b(vx vx1)
    {
        f1 f1_1 = (f1)b.clone();
        f1_1.retainAll(vx1.b);
        if(f1_1.size() > 0)
        {
            f1 f1_2 = new f1(a);
            f1_2.addAll(vx1.a);
            vx vx2 = new vx(f1_2, f1_1);
            return vx2;
        } else
        {
            return null;
        }
    }

    public f1 c(vx vx1)
    {
        f1 f1_1;
        f1 f1_2;
        Iterator iterator;
        int i;
        i = hs.c;
        f1_1 = new f1();
        f1_2 = vx1.a;
        iterator = a.iterator();
        if(i == 0) goto _L2; else goto _L1
_L1:
        Object obj = iterator.next();
        if(!f1_2.contains(obj))
            f1_1.add(obj);
_L2:
        if(!iterator.hasNext())
            return f1_1;
        if(true) goto _L1; else goto _L3
_L3:
    }

    public List d()
    {
        ArrayList arraylist;
        Iterator iterator;
        int i;
        i = hs.c;
        arraylist = new ArrayList(a.size());
        iterator = a.iterator();
        if(i == 0) goto _L2; else goto _L1
_L1:
        f1 f1_1 = (f1)iterator.next();
        arraylist.add(f1_1.b());
_L2:
        if(!iterator.hasNext())
            return arraylist;
        if(true) goto _L1; else goto _L3
_L3:
    }

    public Set e()
    {
        return Collections.unmodifiableSet(a);
    }

    public int f()
    {
        return a.size();
    }

    public int hashCode()
    {
        return a.hashCode();
    }
}